#ifndef MAPWIDGET_H
#define MAPWIDGET_H

#include <QWidget>
#include "mymap.h"
#include "mynodeinfo.h"
#include "visitingnodewidget.h"
#include <QPushButton>

class mapWidget : public QWidget
{
    Q_OBJECT
private:
    myView *m_view;     //可视化地图
    myNodeInfo *m_nodeInfo;     //节点信息展示窗口
    myMap* m_map;        //地图信息管理
    myNode* m_curNode = NULL;       //当前选中的节点
    QPushButton* m_addVisitingNodeButton;   //将选中节点添加至带参观队列按钮
    VisitingNodeWidget* m_visitingNodeWidget;   //待参观队列窗口
    bool m_isVisitingOpen = false;
    // int n = 0;  //调试用
public:
    explicit mapWidget(QWidget *parent = nullptr);
    myView *getView() const;

public slots:
    //修改信息（展示当前选中的节点信息）
    void changeText(myNode *node);
    //选中节点后添加按钮的变化
    void addVisitingNodeButtonChange(myNode *node);
    //移除待参观地点
    void removeVisitingNode(int ID);
};

#endif // MAPWIDGET_H
